From: Florian Müllner Date: Wed, 18 Sep 2013 17:21:50 +0000 (+0200) Subject: shell: Make KeyringPrompt.cancel() callable from signal handlers X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~3363 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=a89fd17b8e6395b93463b98e35b00c7ce035a57b;p=gnome-shell.git shell: Make KeyringPrompt.cancel() callable from signal handlers gcr/gnome-keyring don't handle the case where prompt_password_async()/ prompt_confirm_async() return their result from within the function very well (or rather: break badly). Calling gcr_prompt_close() instead is safe, but to avoid these kind of errors in the future, modify shell_keyring_prompt_cancel() to work as expected in this case. https://bugzilla.gnome.org/show_bug.cgi?id=708187 --- diff --git a/src/shell-keyring-prompt.c b/src/shell-keyring-prompt.c index bafcb90b4..2e9bc67eb 100644 --- a/src/shell-keyring-prompt.c +++ b/src/shell-keyring-prompt.c @@ -771,6 +771,6 @@ shell_keyring_prompt_cancel (ShellKeyringPrompt *self) self->async_result = NULL; self->mode = PROMPTING_NONE; - g_simple_async_result_complete (res); + g_simple_async_result_complete_in_idle (res); g_object_unref (res); }